查看原文
其他

模型有花斑?试试新技术!

GIS前沿 2023-03-28

在日常工作中,睿铂的技术同事隔三差五就会收到客户关于模型花斑问题的咨询,由此,睿铂内部技术考核题中也衍生出一道题目:“请描述一下什么情况下模型容易出现花斑及大概解决方案”。可见,对于倾斜摄影实景模型来说,花斑问题始终是停留在模型成果上挥之不去的“阴影”,是影响模型观感的罪魁祸首之一。


很多客户都想彻底地解决上述问题,但苦于内外业需要花费大量精力——选择合适的作业时段或对大量照片进行匀色处理等等,但这些方法降低项目效率的同时效果也不够好。


有没有办法从源头上解决这类问题呢?那么今天,睿铂就和大家分享一下最新技术:基于卡尔曼滤波平滑曝光模型,局部解决模型的花斑问题;


▲ 花斑会严重影响模型的观感


MAIN CAUSE OF MODEL SPECKLE模型花斑的主要成因


01天气(光影)变化

资深的航测老手都知道,最佳的倾斜摄影作业天气,要么就是万里无云晴天,要么就是亮度足够的阴天,因为这两种天气太阳光线变化是最小的,尤其是阴天还没有光线方向导致的阴影,恰到好处的云层既可以保证足够的光照强度,同时像一个巨大的匀光罩,保证地面各个方向的光照强度和光线方向基本一致,这样的模型效果是最好的;但是这种天气却是可遇不可求的。


▲ 阴天模型效果均匀


02建筑物体本身(或反射)的花斑

现代建筑大量采用了玻璃结构,玻璃的反射就会导致相邻的建筑表面斑驳,对于这种花斑基本属于无解。不过这种花斑有个好处,反光的斑驳相当于给表面加纹理,能够匹配更多同名点,避免漏洞。


▲ 建筑表面斑驳纹理(此图为航片非模型)


03测光导致同一纹理亮度不一致

在航飞过程中,即使光线强度没有变化,但相机的测光功能会随着地物纹理的变化而变化。即便是相同的曝光参数,也会导致同一个纹理表面偏亮或偏暗。纹理变化越剧烈,这种亮暗变化程度明显。尤其在城市区域,会导致建筑物表面形成斑驳的纹理(花斑),影响模型观感。


而今天睿铂要分享的技术,就是针对这种情况的一个解决办法。


▲ 相同镜头连续拍摄的照片,建筑物立面亮度不一致

PRINCIPLE OF EXPOSURE航摄曝光原理

目前比较常见的算法有平均亮度法、权重均值法、亮度直方图等。其中最普遍的就是平均亮度法。平均亮度法就是对图像所有像素亮度求平均值,通过不断调整曝光参数以达到最终的目标亮度。而权重均值法是对图像不同区域设置不同权重来计算图像亮度,例如相机中的各种测光模式的选择就是改变不同区域的权重。亮度直方图法是通过为直方图中峰值分配不同权重来计算图像亮度。航测作业曝光可以有两种方式:自动曝光和固定曝光。


固定曝光:固定曝光就是所有参数预设固定,其优势在于不会有曝光不均匀而导致模型花斑;但要求是外界光线不能有较大变化,否则模型就会整体变暗或者变亮,所以航测很少用固定曝光模型,固定曝光适用于光线稳定的场景,例如室内场景;


自动曝光:在整个白昼时,太阳的光线强度会不断变化。当地物纹理变化较大时,就需要自动曝光模式来对照片亮度进行调整,如前所示自动曝光能够解决部分外部光源变化的问题,但却不能解决纹理变化场景。


睿铂两种方式都尝试过

FIXED EXPOSURE PRINCIPLE固定曝光原理

最早睿铂研发团队是想通过固定曝光方案,首先预设一个曝光参数,在相机上方再加一个太阳辐射强度传感器或者超广角高帧率的相机,目的就是时刻测量太阳辐射强度的变化,结合相机直方图参数,对相机预设曝光参数做补偿。


这样无论太阳和地物怎么变化,都保证了最佳的曝光参数,完美解决曝光参数变化导致的光影斑驳。


不过想法很丰满,现实很骨感。


最大问题就是无人机姿态问题,我们发现无论怎么布置太阳辐射强度传感器,或者采用余弦校正器,都没法避免无人机姿态导致测光参数变化。


▲ 无人机姿态变化导致测光值变化


唯一解决方案就是需要上置一个云台,但是这样就越跑越远了,以后对于对重量不敏感的DG10可能会考虑这种技术方案。


▲ 上置测光稳定云台


▲ 云层对光线变化的影响

BASED ON KALMAN SMOOTH EXPOSURE基于卡尔曼平滑曝光

在曝光过程中,曝光过程是一个动态过程,导致曝光参数的变化主要是“天上光”“地下物”,“天上光”就是太阳进入云层的光影变化,这个时候曝光参数需要做对应的调整,“地下物”就是地物纹理的变化,这个时候曝光参数需要适当稳定;


“天上光”变化特点是五个镜头曝光参数会同步变化,而“地下物”变化的特点是五个镜头曝光参数不是同步的。


所以在做曝光平滑前只要需要一个简单判读,如果五个镜头曝光参数相对同步变化,那么这个时候就直接曝光调整,如果五个镜头曝光参数相对不是同步,那么这个时候就不能粗暴的直接调整曝光,否则就容易导致模型的花斑;


对于“地下物”的变化,相机在曝光过程中,可以把局部的光影变化当成噪声;而噪声是一种干扰,属于不确定的动态系统,卡尔曼滤波就可以对系统下一步要做什么做出有根据的推测。即便有噪声信息干扰,卡尔曼滤波通常也能很好的弄清楚究竟发生了什么,找出现象间不易察觉的相关性。


通过观察光影变化趋势,将变化量作为噪声信号,以推断出影响图像质量的干扰因素,从而预测下一个时刻的状态值,再通过比较实际值和预测值的误差来调整预测值,最终得到较为准确的曝光信号,实现平滑过渡。


卡尔曼滤波是一种基于状态空间模型的优化算法,通过最小化系统状态的方差来提高状态估计的精度。在相机曝光过程中,我们可以将数据采集过程看作一个线性动态系统,其状态空间模型可以表示为:

x(k) = A*x(k-1) + B*u(k) + w(k)

y(k) = C*x(k) + v(k)

其中,x(k) 表示系统在时刻 k 的状态向量,A 是系统状态转移矩阵,B 是系统输入矩阵,u(k) 是输入信号,w(k) 是系统过程噪声,y(k) 表示系统在时刻 k 的观测向量,C 是观测矩阵,v(k) 是系统观测噪声。

卡尔曼滤波的基本流程如下:

预测步骤:根据先验信息预测下一个状态的值和方差,即

x(k|k-1) = A*x(k-1|k-1) + B*u(k)

P(k|k-1) = A*P(k-1|k-1)*A' + Q

其中,x(k|k-1) 表示对 x(k) 的预测值,P(k|k-1) 表示对 x(k) 预测值的协方差矩阵,Q 是系统过程噪声的协方差矩阵。

更新步骤:根据观测值和预测值进行更新,计算出最优状态值和方差,即

K(k) = P(k|k-1)*C'*(C*P(k|k-1)*C' + R)^(-1)

x(k|k) = x(k|k-1) + K(k)*(y(k) - C*x(k|k-1))

P(k|k) = (I - K(k)*C)*P(k|k-1)

其中,K(k) 表示卡尔曼增益,x(k|k) 表示对 x(k) 的最优估计值,P(k|k) 表示对 x(k) 最优估计值的协方差矩阵,R 是系统观测噪声的协方差矩阵。在此系统中,我们对每个参数进行了分析和优化,并设计自适应方式调整滤波器参数,使得滤波效果更为准确,得到我们预期的效果。


通俗来说就是卡尔曼滤波算法相当于一个“算命”先生,通过以往的曝光值来预测下一次的曝光值,实现曝光的平滑,尽可能减小花斑;


POSESCRIPT后记

以上全局平滑曝光的来龙去脉,其核心优势就是在倾斜摄影过程中,避免因纹理变化导致曝光参数变化而形成的模型花斑,提高模型的效果;这个曝光方式跟传统摄影曝光不同之处在于,不是及时去响应地物纹理的变化,追求单张影像曝光正确,而是去整体分析实现一系列影像,把局部的地物纹理变化当成噪声,实现影像整体的曝光正确,而对于太阳光覆盖地方该亮就应该亮一些,而有些深色地方或者阴影地方该暗就应适当该暗一些,达到模型整体观感一致。


▲ 普通工作模式


平滑工作模式


来源:成都睿铂科技

- END -

倾斜摄影模型破洞的5大类型成因及解决方法
实景三维技术助力第三次土壤普查样点校核工作
正式发布!《倾斜数字摄影测量技术规程》《实景三维地理信息数据倾斜摄影测量技术规程》等17项行业标准
CC、Pix4D、PhotoScan、大疆智图、重建大师、M3D、瞰景Smart3D用户手册.PDF下载
对比传统低空航测的无人机倾斜摄影测量精度评估

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存